#ifndef __RUNLOG_H
#define __RUNLOG_H

#define FUNC_SIRQ	-1
#define FUNC_WQ		-2

void add_trace_node_func_ext(void *func, int line, int enter);
#define add_trace_node_func(line, enter) \
	add_trace_node_func_ext((void *)_THIS_IP_, (line), (enter))

void add_trace_node_irq(int irq, int enter);
void add_trace_node_usr(const char *des, int enter);
void add_trace_node_usr_printf(int enter, const char *fmt, ...);
void add_trace_node_sched(struct task_struct *prev, struct task_struct *next);
void dump_trace_log(void);
void set_trace_status(int status);
void start_trace_log(void);
void stop_trace_log(void);

#endif
